package br.com.firula.dao.hibernate;

import java.util.List;

import org.hibernate.Criteria;
import org.hibernate.criterion.Expression;
import org.springframework.stereotype.Repository;

import br.com.firula.dao.UsuarioNewsletterDAO;
import br.com.firula.to.UsuarioNewsletterTO;
import br.com.firula.to.UsuarioTO;

@Repository("usuarioNewsletterDAO")
public class UsuarioNewsletterDAOHibernate extends GenericDAOHibernate implements UsuarioNewsletterDAO {
	
	private static final long serialVersionUID = -1281008826726523348L;

	public UsuarioNewsletterTO getUsuarioByEmail(String email) {
		Criteria c = getSession().createCriteria(UsuarioTO.class);
    	
    	c.add(Expression.eq("email",email));
    	c.add(Expression.eq("removido", Boolean.FALSE));
    	
    	List usuarios = c.list();
    	if(usuarios == null || usuarios.size() == 0)
			return null;
		else{
			return (UsuarioNewsletterTO)usuarios.get(0);
		}
	}	
	
}
